package com.aiti.lulian.controller;
import cn.hutool.core.util.StrUtil;
import com.aiti.base.core.base.controller.WebController;
import com.aiti.base.core.utils.message.Message;
import com.aiti.lulian.entity.CardClusterRichText;
import com.aiti.lulian.service.CardClusterRichTextService;
import io.swagger.annotations.Api;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;


@RestController
@RequestMapping("/cardClusterRichText")
@Api(tags = "cardClusterRichText", description = "")
public class CardClusterRichTextController extends WebController {

    @Autowired
    private CardClusterRichTextService cardClusterRichTextService;

    protected final Logger logger = LoggerFactory.getLogger(CustomerManagementController.class);

    //根据集群id获取文本（可能多个）
    @GetMapping("/getCardClusterRichTextByClusterId")
    public Message getCardClusterRichTextByClusterId(String clusterId) {
        if (clusterId == null) {
            logger.error("异常：===》入参异常");
            return Message.fail("入参异常");
        } else {
            //TODO 根据集群ID获取卡片文本（可能多个）
            List<CardClusterRichText> cardClusterRichTexts = cardClusterRichTextService.getCardClusterRichTextByClusterId(clusterId);
            return Message.success(cardClusterRichTexts);
        }
    }

    //根据集群id批量新增文本
    @PostMapping("/addCardClusterRichTextByClusterId")
    public Message addCardClusterRichTextByClusterId(@RequestBody List<CardClusterRichText> cardClusterRichTexts) {
        try {
            if (cardClusterRichTexts == null) {
                logger.error("新增异常：===》入参异常");
                return Message.fail("入参异常");
            }
            // 新增文本信息
            Message message = cardClusterRichTextService.addCardClusterRichTextByClusterId(cardClusterRichTexts);
            return message;
        } catch (Exception e) {
            logger.error("新增异常：===》" + e);
            return Error(e.getMessage());
        }
    }


    ////根据集群id批量更新文本
    @PutMapping("/updateCardClusterRichTextByClusterId")
    public Message updateCardClusterRichTextByClusterId(@RequestBody List<CardClusterRichText> cardClusterRichTexts) {
        try {
            if (cardClusterRichTexts == null) {
                logger.error("修改异常：===》入参异常");
                return Message.fail("入参异常");
            }
            // 新增文本信息
            Message message = cardClusterRichTextService.updateCardClusterRichTextByClusterId(cardClusterRichTexts);
            return message;
        } catch (Exception e) {
            logger.error("修改异常：===》" + e);
            return Error(e.getMessage());
        }
    }

    //根据主键id删除文本
    @DeleteMapping("/deleteCardClusterRichTextByClusterId")
    public Message deleteCardClusterRichTextByClusterId(String baseId) {
        try {
            if (StrUtil.isEmpty(baseId)) {
                logger.error("异常：===》入参异常");
                return Message.fail("入参异常");
            }
            // 删除文本信息
            Message message = cardClusterRichTextService.deleteCardClusterRichTextByClusterId(baseId);
            return message;
        } catch (Exception e) {
            logger.error("删除异常：===》" + e);
            return Error(e.getMessage());
        }
    }
}